Open SysML Extraction
Summary
The Open SysML extraction integration provides comprehensive SysML model extraction from ReqIF (Requirements Interchange Format) files. Extract requirements, blocks, constraints, relationships, and metadata from major SysML modeling tools with multiple output formats.
Supported File Types: .reqif
Connection Methods: Upload
Supported Tools: MagicDraw, Cameo Systems Modeler, Sparx Enterprise Architect, Eclipse Papyrus, Modelio, IBM Rhapsody
Example Files
Test the Open SysML extraction with these sample ReqIF files:
How and Where to Use
You can use the Open SysML extraction through either the Istari Digital Platform UI or the Istari Digital SDK. Both methods allow you to extract comprehensive SysML model data from ReqIF files exported from various SysML modeling tools.
What You Can Do
- Extract SysML requirements with full traceability information
- Parse blocks, constraints, and relationships from SysML models
- Generate multiple output formats (JSON, TXT, HTML, Excel)
- Create professional HTML reports with responsive design
- Export data to Excel spreadsheets for analysis
- Process ReqIF exports from all major SysML tools
- Access structured JSON data in Cameo-compatible format
- Generate human-readable summary reports
Prerequisites
Before using this integration, ensure:
- Your SysML modeling tool can export to ReqIF format
- The Istari Digital Agent is installed and configured by your administrator
- You have access to the Istari Digital Platform UI or the Istari Digital SDK
- Your ReqIF files are properly exported from your SysML tool
API
Functions
| Function | Description | Inputs | Outputs |
|---|---|---|---|
@istari:extract | Extracts comprehensive SysML data from ReqIF format files | ReqIF file (.reqif) | Extracted data (JSON), Summary report (TXT), HTML report (HTML), Excel spreadsheet (XLSX) |
Output Examples
| Output Name | Type | Description |
|---|---|---|
extracted_data | JSON file | Complete SysML model data in Cameo format including requirements, blocks, constraints, relationships |
summary_report | TXT file | Human-readable summary report with extraction statistics and key metrics |
html_report | HTML file | Professional interactive report with responsive design and modern styling |
excel_spreadsheet | XLSX file | Multi-sheet Excel workbook with organized data for analysis and reporting |
Usage
Method 1: Upload
Upload your ReqIF files directly to the Istari Digital Platform and run extraction jobs using either the Platform UI or the SDK.
Using the Istari Digital Platform UI
Follow these steps to extract SysML data using the web interface:
-
Navigate to the Files page.
Click the Files option in the left-hand sidebar. -
Upload your ReqIF file.
Drag and drop your.reqiffile into the Upload Files area or click to browse and select your file. -
Open the model file.
Once uploaded, click on the ReqIF file in your files list to open its detail page. -
Navigate to the Artifacts tab.
Click the Artifacts tab to view and manage artifacts associated with this file. -
Fill out the function execution form.
In the Execute Function section, provide the following information:- Tool Name:
sysml_tools - Version: Select your SysML tool version (e.g.,
2023.1,2024.1) - Operating System: Select the OS where your Istari Digital Agent is running (e.g.,
Windows 11,Ubuntu 22.04,RHEL 8) - Function:
@istari:extract - Agent: Select the appropriate agent from the dropdown
- Tool Name:
-
Run the function.
Click the Run or Execute button to start the extraction job. -
Monitor job progress.
The page will display the job status. Wait for it to complete (processing time depends on model size and complexity). -
View results.
Once the job completes successfully, the extracted artifacts will appear in the Artifacts tab. -
Download or view artifacts.
- Click on
extracted_data.jsonto view the structured SysML data - Download the
html_report.htmlfor an interactive visualization - Open the
excel_spreadsheet.xlsxfor data analysis in Excel - View the
summary_report.txtfor a quick overview
- Click on
Using the Istari Digital SDK
Prerequisite: Install Istari Digital SDK and initialize Istari Digital Client per instructions here
Step 1: Upload and Extract the File(s)
Upload the ReqIF file as a model
# Upload a ReqIF file for SysML extraction
model = client.add_model(
path="my_sysml_model.reqif",
description="SysML model from MagicDraw/Cameo", # Specify your tool
display_name="System Architecture Model",
)
print(f"Uploaded ReqIF model with ID {model.id}")
Extract SysML data once you have the model ID
# Extract SysML data from the ReqIF file
extraction_job = client.add_job(
model_id=model.id,
function="@istari:extract",
tool_name="sysml_tools",
tool_version="2024.1", # Or: 2023.1, depending on your SysML tool version
operating_system="Windows 11", # Or: Ubuntu 22.04, RHEL 8, Windows 10, etc.
)
print(f"Extraction started for model ID {model.id}, job ID: {extraction_job.id}")
Step 2: Check the Job Status
extraction_job.poll_job()
Step 3: Retrieve Results
Example
from pathlib import Path
# Retrieve the model with updated artifacts
model = client.get_model(model.id)
for artifact in model.artifacts:
output_file_path = f"c:\\sysml_extracts\\{artifact.name}"
# Create directory if needed
Path(output_file_path).parent.mkdir(parents=True, exist_ok=True)
if artifact.extension in ["json", "txt", "html"]:
with open(output_file_path, "w", encoding="utf-8") as f:
f.write(artifact.read_text())
print(f"Saved artifact: {output_file_path}")
else:
# Excel files and other binary formats
with open(output_file_path, "wb") as f:
f.write(artifact.read_bytes())
print(f"Saved binary artifact: {output_file_path}")
Notes on Output Files
-
Extracted Data (
extracted_data.json): Contains the complete SysML model in Cameo-compatible JSON format. Includes all requirements, blocks, constraints, relationships, and metadata. This is the primary output for programmatic processing. -
Summary Report (
summary_report.txt): A human-readable text file with extraction statistics, element counts, and key metrics. Perfect for quick overviews and validation. -
HTML Report (
html_report.html): A professional, interactive HTML report with responsive design. Features modern styling, collapsible sections, and organized data presentation. Open in any web browser for visualization. -
Excel Spreadsheet (
excel_spreadsheet.xlsx): Multi-sheet Excel workbook with organized tabs for requirements, blocks, constraints, and relationships. Ideal for data analysis, filtering, and sharing with stakeholders.
Notes on Supported SysML Tools
- MagicDraw (No Magic): Export your model as ReqIF from File → Export → ReqIF
- Cameo Systems Modeler (Dassault Systèmes): Use File → Export To → ReqIF
- Sparx Enterprise Architect: Export via Publish → Publish as ReqIF
- Eclipse Papyrus: Export through File → Export → ReqIF
- Modelio: Use Export → ReqIF option in the context menu
- IBM Rhapsody: Export via Tools → Export → ReqIF
All tools export to the standard ReqIF format, which this module processes uniformly.
Installation
Prerequisites
- Python 3.11 or higher (for development only)
- Istari Digital Agent version 9.0.0 or higher
- SysML modeling tool with ReqIF export capability
Configuration
Module Version 1.0.0+: Zero Configuration Required! ✓
Starting with module version 1.0.0, the Open SysML integration requires no manual configuration. The module includes all necessary dependencies and works out-of-the-box once installed by the Istari Digital Agent.
System Dependencies
The module automatically handles SysML parsing and data extraction for all supported formats. No additional system libraries or dependencies are required.
Windows: No additional dependencies required.
Linux (Ubuntu/RHEL): No additional dependencies required.
License Configuration
No license is required for the Open SysML integration. This module uses open-source libraries and is freely available as part of the Istari Digital Platform.
Note: You still need valid licenses for your SysML modeling tool (MagicDraw, Cameo, etc.) to create and export ReqIF files.
Versions
Current Module Version: 1.0.0
This is the initial release of the Open SysML extraction module.
Compatibility Notes
- Agent Version: Requires Istari Digital Agent version 9.0.0 or higher
- Operating Systems: Windows 10, Windows 11, Windows Server 2019, Windows Server 2022, Ubuntu 22.04, RHEL 8
- Python Version: 3.11+ (development dependency only; end users don't need Python)
- SysML Tool Versions: 2023.1, 2024.1 (and other versions exporting standard ReqIF format)
- ReqIF Standard: Supports ReqIF 1.0, ReqIF 1.1, and ReqIF 1.2 formats
Changelog
Module Version 1.0.0
Release Date: December 2024
Initial Release Features:
- ReqIF file format support for SysML model extraction
- Comprehensive extraction of requirements, blocks, constraints, and relationships
- JSON output in Cameo-compatible format for integration workflows
- Human-readable TXT summary reports with statistics
- Professional HTML reports with responsive design and modern styling
- Multi-sheet Excel spreadsheet generation for data analysis
- Support for all major SysML modeling tools
- Zero-configuration setup
- Cross-platform support (Windows, Linux)
- Comprehensive error handling and logging
Release Notes
Key Changes Between Versions
Version 1.0.0 (Initial Release):
- First public release of the Open SysML extraction module
- Provides comprehensive SysML model extraction from ReqIF format
- Supports MagicDraw, Cameo, Sparx EA, Papyrus, Modelio, and Rhapsody
- Includes four output formats: JSON, TXT, HTML, and Excel
- Supports Windows 10/11, Windows Server 2019/2022, Ubuntu 22.04, and RHEL 8
- Requires Istari Digital Agent 9.0.0 or higher
Troubleshooting
Common Issues
Issue: Extraction Failed or Empty Output
- Symptom: Error messages indicating extraction failure or empty output files
- Cause: Corrupted ReqIF file, unsupported ReqIF version, or malformed XML structure
- Solution:
- Verify the ReqIF file opens correctly in your SysML tool
- Check that the file is a valid ReqIF export (not a project file or different format)
- Review the
summary_report.txtfor specific error details - Try re-exporting the ReqIF from your SysML tool
- Ensure the ReqIF file uses standard namespaces and structure
- Check for special characters or encoding issues in the file
Issue: Missing Requirements or Elements
- Symptom: Output files show fewer elements than expected
- Cause: Elements not included in ReqIF export, filter settings in SysML tool, or incomplete model
- Solution:
- Check your SysML tool's ReqIF export settings and filters
- Ensure all desired elements are selected for export
- Review the
summary_report.txtfor element counts - Compare the HTML report with your original model to identify missing elements
- Verify that relationships and dependencies are properly defined in the source model
- Try exporting a smaller subset of the model to isolate the issue
Issue: Module Not Found or Won't Execute
- Symptom: Error messages indicating the module cannot be found or executed
- Cause: Module not installed correctly, wrong agent version, or missing dependencies
- Solution:
- Verify Istari Digital Agent version is 9.0.0 or higher
- Check that the Open SysML module is installed in the correct agent modules directory
- Restart the Istari Digital Agent service
- Review agent logs for specific error messages
- Contact your administrator to verify the module installation
Issue: Slow Extraction Performance
- Symptom: Extraction takes longer than expected
- Cause: Large model size, complex relationships, or system resource constraints
- Solution:
- Check the ReqIF file size - very large files (>50MB) may take longer to process
- Review the
summary_report.txtfor processing time metrics - Consider exporting smaller portions of the model for faster processing
- Ensure the agent machine has adequate CPU and memory resources
- For very large models, expect processing times of several minutes
Issue: Excel File Won't Open
- Symptom: Downloaded Excel file is corrupted or won't open in Excel/LibreOffice
- Cause: Incomplete download, browser issues, or file corruption during transfer
- Solution:
- Try downloading the file again from the Istari Digital Platform
- Verify the file size matches the expected size shown in the platform
- Use a different browser if download issues persist
- Check that you have Microsoft Excel 2010 or later, or a compatible spreadsheet application
- If using SDK, ensure the file is written as binary (
read_bytes()) not text
Getting Help
If you continue to experience issues:
- Check the module log files for detailed error messages
- Review the
summary_report.txtartifact for extraction details and statistics - Review the Istari Digital Agent logs for additional context
- Consult the main troubleshooting guide for general agent issues
- Contact Istari Digital support with:
- Module version (1.0.0)
- Agent version
- Operating system
- SysML tool name and version
- ReqIF file size
- Error messages from logs and summary report
- Steps to reproduce the issue
Tips and Best Practices
Optimal Usage Patterns
- Clean Exports: Before exporting to ReqIF, clean up your SysML model by removing unused elements and validating relationships
- Incremental Processing: For very large models, consider exporting and processing individual packages or subsystems separately
- Version Control: Keep track of which model version corresponds to each ReqIF export for traceability
- Naming Conventions: Use consistent naming in your SysML model for easier analysis in Excel outputs
Performance Considerations
- File Size: Smaller ReqIF files (< 10MB) extract fastest. Large models (> 50MB) may require several minutes
- Model Complexity: Models with extensive cross-references and relationships take longer to process
- Output Formats: All four output formats are generated simultaneously; you can't disable individual outputs
- Concurrent Jobs: The agent can handle multiple extraction jobs in parallel for improved throughput
Data Quality Best Practices
- Model Validation: Validate your SysML model in your modeling tool before exporting to ReqIF
- Complete Exports: Ensure your ReqIF export includes all necessary elements, relationships, and metadata
- Encoding: Use UTF-8 encoding when exporting ReqIF files to support international characters
- Verification: Always review the
summary_report.txtto confirm successful extraction and element counts
Output Format Selection
- JSON (
extracted_data.json): Use for programmatic processing, integration with other tools, or custom analysis scripts - TXT (
summary_report.txt): Use for quick validation, logging, or email summaries - HTML (
html_report.html): Use for stakeholder presentations, reviews, or web-based visualization - Excel (
excel_spreadsheet.xlsx): Use for data analysis, filtering, pivot tables, or sharing with non-technical stakeholders
SysML Tool-Specific Tips
- MagicDraw/Cameo: Enable all relationship types in export settings for complete traceability
- Sparx EA: Use the "Full" export option rather than "Filtered" for comprehensive extraction
- Papyrus: Ensure the ReqIF export profile is properly configured before exporting
- Modelio: Check that all diagrams and elements are saved before exporting
- Rhapsody: Export from the project root to include all packages and relationships
Security Considerations
- Local Processing: All extraction happens locally on the agent machine - no data leaves your network
- File Validation: The module validates ReqIF structure before processing to prevent malicious file handling
- Access Control: Use Istari Digital Platform access controls to limit who can extract sensitive models
- Data Retention: Delete extracted artifacts from the platform when no longer needed
FAQ
-
What SysML tools are supported?
- Any SysML modeling tool that can export to standard ReqIF format is supported. This includes MagicDraw, Cameo Systems Modeler, Sparx Enterprise Architect, Eclipse Papyrus, Modelio, and IBM Rhapsody.
-
Can I extract from native tool formats (e.g.,
.mdzip,.eap)?- No, this module only processes ReqIF files. You must export your model to ReqIF format from your SysML tool first.
-
What SysML elements are extracted?
- The module extracts requirements, blocks, constraints, relationships, stereotypes, tagged values, and metadata. Diagrams as images are not extracted (only diagram metadata).
-
How do I know if extraction was successful?
- Check the
summary_report.txtartifact which contains extraction statistics, element counts, and a success indicator.
- Check the
-
Can I customize the output format?
- No, the module generates all four output formats (JSON, TXT, HTML, Excel) automatically. The JSON format follows Cameo conventions for compatibility.
-
Does this support UML models?
- While the module is designed for SysML, it can also process UML models exported as ReqIF since SysML is a UML profile.
-
What ReqIF versions are supported?
- The module supports ReqIF 1.0, ReqIF 1.1, and ReqIF 1.2 formats exported from all major SysML tools.
-
Are there file size limits?
- There's no hard limit, but very large ReqIF files (>100MB) may take longer to process and require adequate system resources.
-
Can I use this module offline?
- Yes, the module runs entirely locally on the agent machine and requires no internet connection for extraction.
-
What if my ReqIF export fails validation?
- Review the error messages in the summary report, check your SysML tool's export settings, and ensure the model is properly saved before exporting. Try exporting a smaller subset of the model to isolate issues.
-
How do relationships between elements appear in the outputs?
- In JSON, relationships are nested within elements. In Excel, relationships have a dedicated sheet with source/target references. In HTML, relationships are displayed in organized sections.
-
Can I extract from multiple ReqIF files at once?
- No, process each ReqIF file separately. However, you can create multiple extraction jobs to process files in parallel.